﻿#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//int main()
//{
//	printf("%s\n", __FILE__);
//	printf("%d\n", __LINE__);
//	printf("%s\n", __DATE__);
//	printf("%s\n", __TIME__);
////	printf("%d\n", __STDC__);
//
//	return 0;
//}
//#define MAX 1000
//#define reg register //为 register这个关键字，创建⼀个简短的名字
//#define do_forever for(;;) //⽤更形象的符号来替换⼀种实现
//#define CASE break;case //在写case语句的时候⾃动把 break写上。
//// 如果定义的 stuff过⻓，可以分成⼏⾏写，除了最后⼀⾏外，每⾏的后⾯都加⼀个反斜杠(续⾏
//符)。
//#define DEBUG_PRINT printf("file:%s\tline:%d\t \
// date:%s\ttime:%s\n" ,\
// __FILE__,__LINE__ , \
// __DATE__,__TIME__ )
//#define QUT(n) n*n
//int main()
//{
//	int a = 0;
//	scanf("%d", &a);
//	int ret = QUT(a);
//	printf("%d ", ret);
//
//
//	return 0;
//
//}
//#define SQU(n) n*n //这里是把5+1 都传入n中，5+1 *5+1=11
//int main()
//{
//	
//	int ret = SQU (5 + 1);
//	printf("%d ", ret);
//
//	return 0;
//}
//#define SQU(n) (5+1)*(5+1) 
//int main()
//{
//
//	int ret = SQU(5 + 1);
//	printf("%d ", ret);
//
//	return 0;
//}
#define MALLOC(num, type)\
 (type )malloc(num sizeof(type))
...
//使⽤
MALLOC(10, int);//类型作为参数
//预处理器替换之后：
(int*)malloc(10 sizeof(int));